import { createApp } from 'vue'
import router from './router'
import store from './store'

import 'normalize.css'
import './assets/css/index.less'

// import pmRequest from './network'
import ElementPlus from 'element-plus'
import 'element-plus/dist/index.css'

import App from './App.vue'
import { setupStore } from '@/store'
import { registerProperties } from './global'

const app = createApp(App)
//注册全局属性
registerProperties(app)

// 需要把setupStore放在router前面
//  -setupStore里面有动态注册路由操作，如果先让路由进行匹配注册，
//  --尽管有路径，但是仍会找不到组件name属性为‘notfound’，最终匹配到Not-Found
//  --故需执行setupStore进行动态路由注册。
setupStore()
app.use(router)
app.use(store)
app.use(ElementPlus)

app.mount('#app')

// console.log(process.env.VUE_APP_BASE_URL)
// console.log(process.env.VUE_APP_BASE_NAME)
// console.log(pmRequest)

// interface DataType {
//   data: any
//   returnCode: string
//   success: boolean
// }

// pmRequest
//   .get<DataType>({
//     url: '/home/multidata',
//     // method: 'GET',
//     // isShowLoading: false,
//     interceptor: {
//       requestInterceptor(config) {
//         console.log('单独拦截器：请求成功拦截~')
//         return config
//       },
//       responseInterceptor(res) {
//         console.log('单独拦截器：响应成功拦截~')
//         return res
//       }
//     }
//     // interceptor: {
//     //   requestInterceptor(config) {
//     //     return config
//     //   }
//     // }
//   })
//   .then((res) => {
//     console.log(res.data)
//     console.log(res.returnCode)
//     console.log(res.success)
//   })
